package com.css.fxfzfxqh.modules.buildings.probabilityEvaluation.economicLossPE.repository;

import com.css.fxfzfxqh.modules.buildings.definitiveEvaluation.economicLossDE.entity.VillageTownHosPeoEntity;
import com.css.fxfzfxqh.modules.buildings.definitiveEvaluation.resistEarthquakesDE.param.AssessParam;
import com.css.fxfzfxqh.modules.buildings.probabilityEvaluation.economicLossPE.entity.EconomicLossPD;
import com.css.fxfzfxqh.modules.buildings.probabilityEvaluation.economicLossPE.entity.EconomicLossPDCalculation;
import com.css.fxfzfxqh.modules.buildings.probabilityEvaluation.economicLossPE.param.EconomicLossPECalculationParam;
import com.css.fxfzfxqh.modules.buildings.probabilityEvaluation.economicLossPE.vo.EconomicLossPCCPEVO;
import com.css.fxfzfxqh.modules.buildings.probabilityEvaluation.economicLossPE.vo.EconomicLossXYPEVO;
import com.css.fxfzfxqh.modules.largeScreen.entity.Calculation;

import java.util.List;
import java.util.Map;

public interface EconomicLossPDRepository {
    void addAssess(EconomicLossPD param);

    EconomicLossPD findById(String id);

    void upDateAssess(EconomicLossPD param);

    String queryLatest(StringBuilder code);

    Map<String, Object> getPage(int curPage, int pageSize, AssessParam param);

    void batchCalculation(List<EconomicLossPDCalculation> list);

    List<EconomicLossPCCPEVO> getListPCC(EconomicLossPECalculationParam param);

    List<EconomicLossXYPEVO> getListXY(EconomicLossPECalculationParam param);

    Map<String, Object> queryCalculation(int curPage, int pageSize,String id, String years);

    void updateCorrectionValue(EconomicLossPDCalculation param);

    void deleteCalculation(String assessId);

    List<Map<String, Object>> getSumByDivisionAndAssessCodes(String ppName, String cityName, String name, String id,
                                                             String condition, String seiMode);
    List<Map<String, Object>> getSumByTaskId(String taskId);

    List<EconomicLossPDCalculation> getByTaskId(String taskId);

    VillageTownHosPeoEntity findByProvinceAndCity(String ppName, String cityName, String name, String s);

    List<Calculation> getValue(List<String> taskIdList, String code);
}
